package org.ing.sisval.bl;

import java.util.ArrayList;
import org.ing.sisval.be.BEDepreciacion;
import org.ing.sisval.da.DADepreciacion;
import org.ing.sisval.ds.DSUtil;
import org.rx.cr.bl.BLAbstract;
import org.rx.cr.conf.Config;

public class BLDepreciacion extends BLAbstract<BEDepreciacion> {

    private DADepreciacion dao;

    public BLDepreciacion(Config conf) {
        setDSConeccion(DSUtil._DSConneccion(conf));
    }

    @Override
    public int registrar(BEDepreciacion tipo) throws Exception {
        dao = new DADepreciacion(getConeccion());
        return dao.registrar(tipo);
    }

    @Override
    public int actualizarRegistro(BEDepreciacion tipo) throws Exception {
        dao = new DADepreciacion(getConeccion());
        return dao.actualizarRegistro(tipo);
    }

    @Override
    public int eliminarRegistro(BEDepreciacion tipo) throws Exception {
        dao = new DADepreciacion(getConeccion());
        return dao.eliminarRegistro(tipo);
    }

    @Override
    public ArrayList<BEDepreciacion> buscarReferencia(String string) throws Exception {
        dao = new DADepreciacion(getConeccion());
        return dao.buscarReferencia(string);
    }

    @Override
    public ArrayList<BEDepreciacion> listar() throws Exception {
        dao = new DADepreciacion(getConeccion());
        return dao.listar();
    }

    @Override
    public BEDepreciacion buscar(int i) throws Exception {
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }

    public ArrayList<BEDepreciacion> listarCategoria() throws Exception {
        dao = new DADepreciacion(getConeccion());
        return dao.listarCategoria();
    }

    public ArrayList<BEDepreciacion> listarAntiguedadCategoria(String cat) throws Exception {
        dao = new DADepreciacion(getConeccion());
        return dao.listarAntiguedadCategoria(cat);
    }

    public ArrayList<BEDepreciacion> listarMaterialAntiguedadCategoria(String cat, String anti) throws Exception {
        dao = new DADepreciacion(getConeccion());
        return dao.listarMaterialAntiguedadCategoria(cat, anti);
    }

    public ArrayList<BEDepreciacion> listarEstadoMaterialAntiguedadCategoria(String cat, String anti, String mat) throws Exception {
        dao = new DADepreciacion(getConeccion());
        return dao.listarEstadoMaterialAntiguedadCategoria(cat, anti, mat);
    }

    public ArrayList<BEDepreciacion> listarValorEstadoMaterialAntiguedadCategoria(String cat, String anti, String mat, String estado) throws Exception {
        dao = new DADepreciacion(getConeccion());
        return dao.listarValorEstadoMaterialAntiguedadCategoria(cat, anti, mat, estado);
    }

}
